Multi-User-Multiple-Input-Multiple-Output (MU-MIMO) is a wireless communication technique that allows a communications device (such as an access point) to transmit multiple distinct data streams over the same frequency channel concurrently to multiple client devices. The MU-MIMO capable communications device has multiple antennas and utilizes beamforming to transmit the multiple data streams via the multiple antennas (thus, the communications device is sometimes referred to as a beamformer). Beamforming involves varying parameters of the individual signals transmitted by the antennas (such as the phase or amplitude) so as to manipulate the combined radiation pattern that is emitted by the antennas in some desired way—for example, the radiation pattern may be spatially shaped in such a manner that the strength of the signal is increased at a client device's location. MU-MIMO utilizes a particular form of beamforming known as precoding, which is characterized by having multiple distinct data streams that are transmitted with independent weightings (as opposed to transmitting the same data stream from each antenna). By exploiting knowledge of channel states of the client devices, the MU-MIMO beamformer is able to use precoding to concurrently send multiple distinct data streams to multiple client devices, with each of the client devices being able to recover the stream that is intended for the client device from among all of the other transmitted streams and noise.
In particular, the communications device may form a number of MU-MIMO groups that each include one or more client devices. The MU-MIMO groups each constitute a grouping of client devices that are to have their data transmitted concurrently. For each transmission period, the communications device may select one of the MU-MIMO groups to be a target group that is to receive transmission during that period. During each transmission period, data may be transmitted concurrently to each of the client devices that are part of the target MU-MIMO group. Thus, if the number of MU-MIMO groups formed by the beamformer is M, then all of the client devices that are connected to the beamformer may receive a transmission in as few as M transmission periods using MU-MIMO techniques; in contrast, it may take N transmission periods to transmit to all of the client devices in single-user mode, where N is the number of client devices connected to the beamformer. M is generally less than N (M may be as low as
      ROUND_UP    ⁢                  [          N      A        ]    .where A is a maximum number of data streams that the communications device can concurrently transmit), and therefore the number of transmission periods that are used to transmit to all of the client devices using MU-MIMO techniques is generally less than the number of transmission periods used to transmit to all of the client devices using single-user transmission. Since the same amount of data may be transmitted using MU-MIMO techniques in fewer transmission periods than when using single-user transmission, the overall throughput of the network may be greatly increased.